import axios from "axios";
import nProgress from "nprogress";
import 'nprogress/nprogress.css'
const request=axios.create({
     //使用环境变量，来区分当前的环境，并拿到代理的前缀
    baseURL:process.env.VUE_APP_API,
    timeout:10000
})

// 请求拦截器
request.interceptors.request.use(
    (config)=>{
        // 在发送请求之前做些什么
        nProgress.start()
        return config
    },
    (error)=>{
        return Promise.reject(error.message)
    }
)

// 响应拦截器
request.interceptors.response.use(
    (response)=>{
        // 再响应之前做些什么
        nProgress.done()
       if(response.data.code===200){
        return response.data.data
       }else{
        //自己封装一个错误对象
        return Promise.reject({message:response.data.message})
       }
    },
    (error)=>{
        return Promise.reject(error)
    }
)

export default request